//
//  ContactsGroup.h
//  ChildHoodStemp
//
//  Created by 日东 罗 on 13-9-23.
//
//

#import <Foundation/Foundation.h>

typedef enum {
    ContactsGroupTypeMyClass = 1,
    ContactsGroupTypeMembers = 2,
    ContactsGroupTypeClasses = 3,
    ContactsGroupTypeFriends = 4,
    ContactsGroupTypeFollows = 5,
    ContactsGroupTypeFollowers = 6,
} ContactsGroupType;

///////////////////////////////////////////////////////////////////////////////////
//  此类在班级组下使用
@interface ContactsGroupMember : NSObject
@property (nonatomic, retain) NSString *CGMName;    //班级名称
@property (nonatomic, assign) int CGMCount;         //班级人数
@property (nonatomic, assign) int32_t clazzId;
@end
///////////////////////////////////////////////////////////////////////////////////

@interface ContactsGroupBase : NSObject {
    id                  _groupData;                 //分组中联系人的Memory数据
    ContactsGroupType   _groupType;                 //分组类型
	NSString            *_CGName;                   //分组名称
    int                 _CGCount;                   //分组成员人数
	NSMutableArray      *_groupMemberArray;         //如果该组为“班级组”才有效，其它分组无效，存放的是ContactsGroupMember
}
@property (nonatomic, retain) id groupData;
@property (nonatomic, assign) ContactsGroupType groupType;
@property (nonatomic, retain) NSString *CGName;
@property (nonatomic, assign) int CGCount;
@property (nonatomic, retain) NSMutableArray *groupMemberArray;
@end

@interface ContactsGroup : ContactsGroupBase
{
    BOOL                _opened;
    BOOL                _canOpened;
    NSMutableArray      *_indexPaths;
    int32_t             _clazzId;
}
@property (assign) BOOL opened;                             // 是否为展开
@property (assign) BOOL canOpened;                          // 能否展开
@property (assign) int32_t clazzId;                             // xuzuotao the clazz id

@property (nonatomic,retain) NSMutableArray *indexPaths;    // 临时保存indexpaths
@end
